package edu.lambdateacher.expressions;

/*
 LambdaTeacher
 Copyright (C) 2000  Kim Mason
 Copyright (C) 2014  Vitalij Zadneprovskij

 This program is free software; you can redistribute it and/or
 modify it under the terms of the GNU General Public License
 as published by the Free Software Foundation; either version 2
 of the License, or (at your option) any later version.

 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.

 You should have received a copy of the GNU General Public License
 along with this program; if not, write to the Free Software
 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
 */


/**
 * The number subclass of expressions. This represents a numerical value.
 */
public class Numbers extends Expression implements Cloneable {
	private int value;

	public Numbers() {
		super();
		setValue(0);
	}

	public Numbers(int invalue) {
		super();
		setValue(invalue);
	}

	public int getValue() {
		return this.value;
	}

	public void setValue(int invalue) {
		this.value = invalue;
	}

	/**
	 * Override the clone method in superclass object
	 */
	public Object clone() {
		int newvalue = this.getValue();
		Numbers toreturn = (Numbers) super.clone();
		toreturn.setValue(newvalue);
		return toreturn;
	}

	/**
	 * unParse() simply unparses the current number.
	 */
	public String stringRepresentation(boolean verbose) {
		return String.valueOf(getValue() + " ");
	}

}
